Methods and system for enhanced directory assistance using wireless messaging protocols

ABSTRACT

Directory assistance provides telephone number look up services to callers based on the business or caller name as listed in a telephone directory. In the prior art, directory assistance provides a value-added service to telephone users and an expense that must be charged back to telephone callers or absorbed by telephone carriers. In enhanced directory assistance (EDA) services as described in the disclosure, EDA is further developed to deliver a keyword targeted advertising service to telephone listing owners and advertisers. The present invention provides a method and system to extend EDA services to the wireless messaging systems used by telecommunications operators. The invention further discloses methods to support both one-way and two-way communications on these devices, as well as systems to support the distributed EDA Transaction business model.

RELATED APPLICATION INFORMATION

This application claims priority from U.S. Provisional PatentApplication No. 60/400,188 filed Jul. 31, 2002 and which is incorporatedherein by reference.

NOTICE OF COPYRIGHTS AND TRADE DRESS

A portion of the disclosure of this patent document contains materialwhich is subject to copyright protection. This patent document may showand/or describe matter which is or may become trade dress of the owner.The copyright and trade dress owner has no objection to the facsimilereproduction by any one of the patent disclosure as it appears in thePatent and Trademark Office patent files or records, but otherwisereserves all copyright and trade dress rights whatsoever.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention generally relates to the field oftelecommunications, and particularly relates to a system and method forproviding advertising opportunities using directory assistance andwireless messaging systems.

2. Description of the Related Art

Telephone Directory Assistance has been around as long as there havebeen telephone operators. Once the number of telephone subscribersreached two and three digits, telephone directories were published asservice to the large numbers of telephone subscribers. These publishedtelephone directories or books helped both the subscribers and telephoneoperators locate and contact other telephone subscribers.

There are two types of telephone directories. The White Page-styleddirectory lists basic telephone contact information for all telephonesubscribers; basic listings are free to all subscribers and subscribersare listed by name. The Yellow Page-styled directory lists products andservices by category, to be included in a Yellow Page directory anadvertiser must pay a fee. The Yellow Page directory advertiser pays forboth the size of the advertisement or listing and for its inclusion inone or more specific categories.

Traditional directory assistance service provides telephone number lookup to the White Page style directory. Enhanced directory assistanceservice provides look up to a Yellow Page style directory. Thedifference between the two is based on how a caller finds a particulardirectory listing.

In a traditional directory assistance service, the caller contacts adirectory assistance operator and gives the operator the name of abusiness or person and its associated locale. The directory assistanceoperator then searches a telephone directory database for a telephonelisting that matches the sought-after criteria. Upon finding a match ora set of matches, the operator informs the caller and either getsfurther information to narrow the results or offers to connect thecaller to a desired telephone number.

In an enhanced directory assistance system, a caller contacts adirectory assistance operator and in addition to providing as somelocalization information to narrow where the caller wishes to find theproduct or services, the caller provides a category name or keywordassociated with the desired product or service. In the present art, anenhanced directory assistance operator then takes the providedinformation and searches or queries a Yellow Page-styled directory. Uponfinding a match, the operator informs the caller and either gets furtherinformation to narrow the results or offers to connect the caller to thedesired telephone number.

In the present art, inclusion in these paid listings is offered to abusiness or organization through monthly or yearly subscription fees.Also in the present art, listing partners can pay a premium fee to belisted at the top of a category or keyword lookup result list. Thepremium or preferred listing is given priority treatment by thedirectory assistance operator and mentioned before any other paidlistings are communicated.

The present invention provides methods and systems that allow directoryassistance providers to use shared directory assistance resources withalready deployed wireless communications systems. The new revenueopportunities will allow significant revenue increases without requiringtelecommunications companies to implement new infrastructures.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a system block diagram of a distributed Enhanced DirectoryAssistance (EDA) Listing Service.

FIG. 2 shows a system block diagram of a Messaging System and an EDAListing Service.

FIG. 3 shows a system block diagram of a Messaging System Layer and itsinterface to an EDA Listing Service.

FIG. 4 shows a voice enabled Mobile Terminated Messaging implementationof a message-based EDA Listing Service.

FIG. 5 shows a voice enabled Mobile Originated Messaging implementationof a message-based EDA Listing Service.

FIG. 6 shows a table listing the differences between messaging protocolsas the affect a message-based EDA Listing Service.

FIG. 7 shows a flowchart of a voice enabled single messageimplementation of a message-based EDA Listing Service.

FIG. 8 shows a flowchart of a voice enabled message menu implementationof a message-based EDA Listing Service.

FIG. 9 shows a flowchart of an SMS Session ID and how it relates to theEDA Transaction Correlation model.

FIG. 10 shows the core functional blocks of a generic messaging EDAimplementation.

DETAILED DESCRIPTION OF THE INVENTION Distributed Enhanced DirectoryAssistance Listing Service

Enhanced Directory Assistance (EDA) services provide opportunities fortelephone listing owners and advertisers to promote products andservices to telephone callers looking for the same products andservices. In reference to FIG. 1, the illustration shows such an EDAListing Service. In this embodiment, an EDA Advertiser 10 owns a set oftelephone directory listings that are maintained in a Local AdvertiserDirectory Listing (LADL) Database 16 that is operated by the EDA Center12. Each directory listing in the LADL is associated with one or morekeywords.

The operation of the EDA Listing Service is straightforward. The EDAAdvertiser agrees to pay the EDA provider a predetermined amount ofmoney for every telephone referral the advertiser receives from the EDACenter. The EDA service discussed here can rightly be called a paidreferral service. The listings themselves may be organized by location,referral amount paid, and keyword association.

The LADL database contains directory listings that belong to advertisingclients of that particular EDA Center. These listings are locallymaintained and controlled.

At predetermined times, these local listings are published into a systemof Shared Directories 22. The Shared Directories effectively comprise a“read-only” database of listings that are cached and distributedindependently of the LADL data.

Once published as Shared Directories, the listings are aggregated andsorted with listings from other EDA Centers. This architecture enhancesscalability and performance by keeping two sets of data. One set is“live” and available for maintenance and update. The other set is“read-only” and represents replicated data that is distributedthroughout the network. The two sets of data are kept in sync bydefining refresh rules and a data recycling architecture.

Each of the shared directory listings contains content information(Listing ID, Listing Description; Referral Phone Number), ownerinformation (Advertiser ID, EDA Provider ID), business transactioninformation (Referral Amount, Business Rule ID), and keywordidentifiers.

EDA Center Operation

In reference to FIG. 1, when a Telephone Customer 14 dials apredetermined EDA number, the EDA Center assigns the call to an EDAOperator 18. After determining the geographical location of thecustomer, the operator obtains a keyword from the customer, therebyidentifying the product or service the customer is seeking.

The operator submits the keyword to the LADL database application, whichqueries the shared directory system. The system returns a list ofadvertised telephone listings and descriptions for the submittedkeyword. The individual referrals can be organized in any number ofways. In one embodiment, the referral list is organized by the highestto lowest amount paid for each referral. In this embodiment the EDAoperator recites the list to the customer, who selects one of thereferral items.

In another EDA Listing Service embodiment, the functions of the EDAOperator can be done by an Interactive Voice Response (IVR) system 20.In an IVR embodiment a series of voice dialogs could be constructedusing any number of well-known Voice XML (VXML) platforms. As before,the IVR system presents the customer with a set of referrals and thecustomer selects one.

The final result of an EDA inquiry is a telephone referral. In thereferral, the inquiry call is transferred to the selected advertiseddirectory listing referral number and a referral business transaction isinitiated.

Messaging Systems and EDA Listing Service

FIG. 2 shows how a wireless messaging system can be incorporated intothe EDA listing service described by FIG. 1. Referring to FIG. 2, thewireless components 32 are connected to a Conventional EDA center 30 viaa network such as the Internet.

In one preferred embodiment, the EDA center is connected to a MessagingGateway (MG) 34 that provides access to multiple wireless messagingsystems. The MG is connected to any one of several wireless network 36standards. The standards currently known in the art are:

GSM Global System for Mobile Communications;

EDGE Enhanced Data for GSM Evolution;

CDMA Code Division Multiple Access;

TDMA Time Division Multiple Access;

GPRS General Packet Radio Service.

Messaging devices such as cell phones 40, wireless PDAs (personaldigital assistants) 42 or smart pagers 38 connect to the wirelessnetwork to make requests and access the paid EDA referral content. Inone preferred embodiment, the messaging devices may initiate a range ofEDA requests using operator-assisted EDA, automated IVR voice-enabledsystems, pure text messaging systems or a combination of any of theabove methods.

Messaging System Infrastructure

FIG. 3 illustrates an embodiment of current message technology and adistributed EDA Listing Service. Referring to FIG. 3, the wirelessdevices access the extended EDA service through standard wirelessprotocols:

WAP 50, wireless application protocol;

SMS MO 52, mobile originated short message service;

MMS 54, multimedia message service;

EMS 56, enhanced message service;

SMS MT 58, mobile terminated short message service.

The differences between these protocol standards, as regarding thedisclosed invention, are summarized in FIG. 6. Note that all the listedwireless protocols are two-way or bi-directional except for SMS MT.Mobile terminated SMS is a broadcast message model, where wirelessdevices receive messages only. Two-way models allow the wireless deviceto both send and receive messages.

Referring again to FIG. 3, messages and signals using the variouswireless protocols enter the system through the Messaging Gateway (MG)62. Currently, there are not only incompatible standards used withinwireless telecommunications carriers, there are also differingimplementations between carriers even within the same standard. Themessaging gateway provides protocol transformation functions that mapincoming messages to formats compatible with the various supportedmessaging systems and platforms. In one preferred embodiment, the MGprovides transformations between various messaging standards such as SMSto EMAIL to Instant Messaging (IM).

On the same level as the MG is a VXML or Voice XML Server (VXMLS) 64.The VXMLS is a voice-enabled application that provides voice dialogs tomake EDA requests and selections. In one preferred embodiment, theVXMLS/messaging standard combination, provides a robust and flexibleinput system for wireless EDA. The input to the VXMLS is shown as an IVRInteractive Voice Response 60 system.

The MG connects to message centers that rout messages to and fromvarious participants. In SMS, the routing is controlled by an SMSC shortmessage service center 68. In one preferred implementation, the SMSCreceives messages, forwards them to the identified recipient if therecipient is available or stores the message for later delivery if therecipient is offline. The SMSC is also able to pre-process messagesbefore delivery and re-route messages programmatically if desired. TheMG also connects to other messaging centers, which perform functionsanalogous to the SMSC for different messaging protocols.

The next functional block—the Messaging Interface 70—transformsmessaging formats into compatible EDA requests and responses. Thisenables the messaging system to connect to a complete EDA Center 74 ornode. A similar interface block—the VXML Interface 72—transforms VXMLinputs into EDA compatible queries and transforms EDA result lists intoformats appropriate for VXML menus. Finally, the EDA Center accesses theEDA network of Shared Directories 74.

The table shown in FIG. 6 details the differences between the variousmessaging protocols.

WAP—wireless application protocol—while not exclusively a messagingprotocol, can nonetheless be used in a wireless EDA implementation. WAPis the de-facto world standard for the presentation and delivery ofwireless information and telephony services on mobile phones and otherwireless terminals. WAP allows active content in the form of WML(wireless markup language) programmable mini-pages or cards to begenerated dynamically and “pushed” or sent directly to cell phonemini-browsers. WAP pages “pull” content from standard web servers anduse most of the interactive features commonly associated with web pagesand web browsers. While WAP is a standard, it is implemented differentlyboth by equipment manufactures and telecommunications carriers.

SMS—short message service—is the most widely implemented wirelessmessaging protocol in the world. SMS uses small text-only messages thatare typically less than 160 characters in length. SMS operates in twomodes Mobile Terminated (MT) and Mobile Originated (MO). MT SMS providesone-way text communication, where cell devices only receive text fromthe SMS Center. MO SMS allows cell devices to both send and receivemessages. MO SMS uses the SMPP—small message peer-to-peer—protocol tosend messages directly from one message device to another.

EMS (enhanced message service) and MMS (multimedia message service)typically refer to evolutionary forms of SMS. EMS allows the sending ofpictures, sounds and ring tones in longer richer messages. MMS willallow digital sounds, images and even video to be sent when new highcapacity network infrastructures are in place. MMS will most likelyrequire full 3G (third generation) wireless networks. Limited EMS isavailable now, and will become popular when more 2.5G (two and one-half)networks are deployed.

Voice-Enabled Mobile Terminated Messaging

FIG. 4 illustrates an EDA Messaging implementation using MT SMS. Thepreferred embodiment demonstrates a wireless EDA service using acombination of voice and one-way SMS messaging.

Referring to FIG. 4, a caller on a cell phone 80 dials an EDA accessnumber looking for a local Chinese restaurant. The wireless system 82connects the caller to an Interactive Voice Response (WR) application 86that is connected to an EDA center 88. The interaction between thisimplementation and the SMS MT EDA system is straightforward.

Through a series of vocal dialogues, the IVR application obtains thekeyword “Chinese restaurant” from the caller. The application thensubmits the keyword to the EDA Center via the Message System InterfaceLayer 88. The EDA Center returns an ordered referral list representingthe paid listings for that keyword. The IVR application creates a vocalselection menu from the referral list and verbalizes the selectionoptions to the caller. At this point, the caller selects one item fromthe referral menu.

Given a listing selection, the EDA Center proceeds to complete areferral transaction. First, it sends the selected Referral Content 96to the SMS Center 94 via the Message System Interface Layer 88. Areferral business transaction is also initiated to debit a referralamount from an Advertiser Account 98 and add a credit transaction to theEDA Center's revenue account. The actual referral content 96 is routedback 92 through the wireless network to the caller's phone by the SMSCenter 94.

In one embodiment, the final referral text message 90 appears on thecaller's phone. Using standard SMS techniques, this message can belinked to a call back number that can be the advertiser's referral phonenumber. Pressing call while viewing this message automatically connectsthe caller to the referred phone number.

In a preferred embodiment the call back number can be a monitored EDAcallback number that is used to track the outcome of the referral. Inthis arrangement, a central EDA Center number is used as the callbacknumber and each choice is given a different direct dial extensionnumber. Upon connecting to the appropriate number and extension, the EDAcustomer's call is transferred to the selected advertiser's referralnumber.

Using a central number callback scheme, the result or outcome of atelephone referral can be monitored and tracked. This type of outcometracking functionality is further detailed in FIG. 7.

Voice-Enabled Mobile Originated Messaging

FIG. 5 illustrates an EDA Messaging implementation using MO SMS.Referring to FIG. 5, a caller on a cell phone 101 dials an EDA accessnumber looking for a local Chinese restaurant. The wireless system 102connects the caller to an Interactive Voice Response (IVR) application106 that is connected to an EDA center 110 via a Messaging SystemInterface Layer 108. The interaction between this implementation and theSMS MO EDA system is likewise straightforward.

As before, through a series of vocal dialogues, the IVR applicationobtains the keyword “Chinese restaurant” from the caller. Theapplication then submits the keyword to the EDA Center via the MessagingSystem Interface Layer 108. The EDA Center returns an ordered referrallist representing the paid listings for that keyword.

In one MO SMS embodiment, the referral list is formatted into an SMSapplication message by the interface layer 108 and sent to the SMSCenter 114. The SMS Center then pushes the message to the WirelessNetwork 102 and back to the caller's cell phone. The referral message122 appears on the cell phone, waiting for the caller to make aselection.

In one SMS implementation, the caller chooses a selection and pressesthe “Send” message button, followed by the text message selectionidentifier “A”. The referral response message 112 is sent back to theSMS Center 114 and back to the messaging system interface layer wherethe returned selection “A” is used by the SMS application logic toreturn the address, phone number and description of the selectedlisting. This returned data is converted to a final referral SMS message124 and sent back through the wireless network to the caller's phone.

At the same time the system returns the referral message, it alsoinitiates a referral transaction, executing a debit transaction on thelisting advertiser's account and crediting the EDA Center's revenueaccount.

Single SMS Message Operational Flow

FIG. 7 details the operational flow of a single SMS messagevoice-originated EDA referral. As referenced in the embodiment shown inFIG. 7, the EDA call is initiated 132 by a customer using a cell phone.The call is received at the EDA Center 134 through the wireless network,where the location of the call is determined 136 and stored as alocation identifier—Loc ID. In one embodiment this Loc ID is a zip code.

Next in this implementation, the EDA Center wireless network switchconnects the call to an Interactive Voice Response (IVR) platform whosetask is to determine the sought after EDA keyword. The IVR platform'sGet Keyword 138 operation can use any of the well-known speechrecognition technologies available in the current art.

In one embodiment a Voice XML (VXML) platform creates a series of voicedialogs which direct the user to the most applicable keywords in thesystem. Well-designed voice dialogs can increase the degree ofrecognition certainty, thus making the IVR application more robust andthe advertising system more efficient.

Once the keyword is determined, the EDA listing database is queried withthe keyword and location parameters. As explained in the basic EDAListing Service operation, the EDA database returns an appropriate setof directory referral listings 140. The messaging interface layer thenformats the result set as a VXML voice menu 142 and prompts the user tochoose an option by vocalizing the menu 144. In the single SMS messageembodiment disclosed, all EDA query determination and result setinformation exchange occurs in voice and text-to-speech interactions.

According to the teachings of the invention, other configurations of theEDA functions can be developed. In one embodiment, more detaileddescription of the various options can be conveyed by playing backpre-recorded voice tracks, making the system appear more human and moreapproachable.

Once the interaction between the caller and the EDA system is complete,a menu option will be selected. The selected option will then be mappedto a referral phone number, travel directions and assorted businessinformation. This data is returned to the EDA message center where it isformatted as a message 150.

Next, in a preferred embodiment, the EDA Messaging Interface layercreates an SMS Session ID that relates the current EDA query to aparticular cell number. In other words using this SMS Session ID, an EDAserver can retrieve all of the current EDA query details. The operationof the SMS Session ID is further detailed in FIG. 9.

At this point in the implementation a Send Referral Transaction record152 is generated and stored with the SMS Session ID. Also, the SMSmessage is sent out to the EDA caller 154 via the wireless phone network156.

Continuing along with the preferred implementation of FIG. 7, thecustomer receives the SMS message 158. If the customer so chooses afterreading the message, the customer may automatically dial the displayedSMS callback number 160 by pressing the “Call” or “Send” phone button.The callback is sent 161 back to the EDA Center as an SMS Callback viathe wireless network 162.

Next the EDA center's messaging interface receives 163 and begins toprocess the callback. The processing begins by determining the SMSSession ID 164 from the EDA customer's cell number. It then correlatesthe Session ID with the Send Referral Transaction 166. From there theserver retrieves the Referral Transfer Phone number 168. Finally, beforeending the EDA session, the EDA Center server transfers the call to thepaid Referral Phone Number 170 and generates a Billing ReferralTransaction 172 record. At this point the normal EDA Center businessoperations take over 174.

SMS Message Menu Operational Flow

FIG. 8 shows an embodiment of an SMS Menu based EDA implementation. Asreferenced by FIG. 8, the customer initiates an EDA call 180 using acell phone. The call is received at the EDA Center 182 through thewireless network, where the location of the call is determined 184 andstored as a location identifier—Loc ID. In one embodiment this Loc ID isa zip code.

Next in this implementation, the EDA Center wireless network switchconnects the call to an Interactive Voice Response (IVR) platform whosetask is to determine the sought after EDA keyword. The IVR platform'sGet Keyword 186 operation can use any of the well-known speechrecognition technologies available in the current art.

In one embodiment a Voice XML (VXML) platform creates a series of voicedialogs which direct the user to the most applicable keywords in thesystem. Well-designed voice dialogs can increase the degree ofrecognition certainty, thus making the IVR application more robust andthe advertising system more efficient.

Once the keyword is determined, the EDA listing database is queried withthe keyword and location parameters. As explained in the basic EDAListing Service operation, the EDA database returns an appropriate setof directory referral listings 188. Here the SMS menu implementationbegins to diverge from the previous single message implementation.

First the Messaging Interface layer formats the result set as a longermessage with multiple callback numbers. Each menu option will be mappedto a referral phone number, travel directions and assorted businessinformation. This data is returned to the EDA message center where it isformatted as a message 190.

Once the SMS menu message has been constructed, the messaging interfacelayer creates an SMS Session ID 192 that is used to relate the currentEDA query to this customer call. The operation of the SMS Session ID isfurther explored in FIG. 9. After generating a Send Referral Transactionrecord 193, the messaging layer submits the SMS message to the wirelessnetwork for delivery 194. The SMS menu message is then carried over theWireless Network 196 and delivered to the calling customer.

In the SMS message menu embodiment disclosed, all EDA querydetermination and result set information exchange occurs via two-way SMSmessaging. In one embodiment, more detailed description of the variousoptions can be conveyed by sending back individual description messageson demand, making the system much more informative and accessible.According to the teachings of the invention, other configurations of theSMS EDA service can be developed. The functional blocks used in the coreSMS EDA service are detailed in FIG. 10.

Continuing along with the preferred implementation of FIG. 8, thecustomer receives the SMS message 198. After reading the referral menumessage 200, the customer selects an option 202 and sends the displayedSMS callback number by pressing the “Call” or “Send” phone button. Thecallback is sent 204 back to the EDA Center as an SMS Callback via thewireless network 205.

Next the EDA center's messaging interface receives the callback message206 and begins to process the message. The processing begins bydetermining the SMS Session ID 208 from the EDA customer's cell number.It then correlates the Session ID with the Send Referral Transaction210. From there the server retrieves the Referral Transfer Phone number212. Finally, before ending the EDA session, the EDA Center servertransfers the call to the paid Referral Transfer Phone Number 214 andgenerates a Billing Referral Transaction 216 record. At this point thenormal EDA Center business operations take over 218.

Session ID's and Transaction Correlation

FIG. 9 details the workings of the Session ID and its relationship toEDA Transactions. The interaction between the central EDA listingservice and a cell phone customer can rightly be characterized as aclassic client/server system where the cell phone is the clientapplication and the various EDA Center services make up the server.

The requests and responses between the components are asynchronous anddisconnected in nature. This means that there is no intrinsic propertythat relates a specific EDA request to a specific EDA result set. Forthis reason, the disclosure introduces the notion a Session ID.

As shown in the preferred embodiment detailed in FIG. 9, before an EDAquery is executed by the Local Advertiser Directory Listing DatabaseApplication, an EDA Session is initiated 220. At the Messaging Interfacelayer that interfaces with the standard EDA Listing Service, a programwill create a session ID 222 that is related to the EDA customer'smobile phone number. In one embodiment this ID could be the actual tendigit phone number such as “5625551212”. Or it could be a hash codegenerated from this number.

In the course of the EDA call, an EDA result list will be generated 224.This ordered list represents the directory listings, descriptions andreferral phone numbers for specific keyword and location code EDA queryparameters. The result list will then be mapped to a set of phonenumbers that identify each listing 226.

In one embodiment this set of numbers could represent direct-dial phoneextensions within the EDA Center call-switching center. These phonenumbers are the actual callback numbers used in an SMS message callback.In this mapping configuration, each callback number would be related tothe referral phone numbers on the EDA result list. This phone mappingwould then be stored with the Session ID for later callback processing228.

The EDA result list will then be formatted as a Message, with the mappedphone numbers as callback numbers. This message can then be sent via thewireless network 230.

After the customer's cell phone has received the message block, thecustomer can automatically dial the callback number. Pressing the “call”button while displaying a phone number from the EDA result list messageusually does this.

Later the EDA Center receives the callback on an EDA callback extension232 and begins to process it. First an EDA Messaging server determinesthe Session ID form the customer's cell phone number 234. To keep therequests in sync, the Session ID is generated using the same techniqueas in 222.

Next the server gets the previously stored phone extension map using thesession ID 236. From this phone map, the EDA Messaging serverreconstructs the result list options and gets the referral phone number240 representing the selected EDA referral option. The call is thetransferred to this number 242 and a Referral Transaction is generatedfor billing the referral 244.

Core Messaging EDA Functional Blocks

According to the teachings of this invention, adding a messaging systemto a paid EDA referral advertising system is straightforward. As we haveseen in this disclosure, there are many messaging standards as well asmany implementations of these standards by various wireless carriers.

FIG. 10 shows the core messaging EDA functional blocks as three tiers 1,2 and 3. Referring to FIG. 10, the three tiers roughly representdifferent three phases of a messaging EDA implementation: Making the EDARequest, Rendering the EDA Referral List; and Processing the ReferralMessage. The messaging EDA system that is the subject of this disclosuremay implement alternative technologies within any of these blocks.Likewise, the order and configuration of these blocks may vary whilestill following the teachings of this invention.

Making the EDA Request

Tier 1 begins with Make EDA Request 250. This function usually involvesa customer using a cell phone to call the EDA Center. It also involvesgetting the parameters of the EDA query: a keyword and a location. Thequery parameters may be determined in several ways: by answering aseries of VXML dialogs; by creating a formatted text message; or bymaking an operator-assisted database query.

In an alternative embodiment the Make EDA Request function could beaccomplished by using dedicated software/hardware key combinations. Inone embodiment a series of button presses such as “#”-“*”-“R” couldrepresent and EDA Request for “Nearest Restaurants”. Another embodimentmight employ sending an SMS message to the EDA Center with a keyword asthe message payload.

The Get EDA Results block 252 represents the Messaging Gateway and anymessage interfacing functionality. One embodiment might includemessaging system translation layers that allow messages sent by onemessaging standard to be received via another standard. The FormatResults as Options Message 254 block represents systems that convert theEDA database formats into various messaging formats such as SMS, EMS,MMS and even WAP.

The Create Session Data block 256 represents any data persistencetechnology that allows loosely coupled asynchronous systems to conductrobust and reliable transactions. This function might involve databases,message queues, and transaction coordinators that are well known in thecurrent art.

The final block in tier 1 is the Send Options Message 258 block. TheSend Message block broadcasts the message to a mobile receiver. Thisserver-based function might be accomplished by a wireless messagecontrol center such as an SMSC in an SMS messaging implementation. Inanother embodiment, this function might involve an Instant Messaging(IM) to wireless translation service linking TCPIP-based IM systems towireless text message networks.

Rendering the EDA Referral List

Tier 2 involves functions that receive and display or render EDAMessages. This function could be accomplished by a cell phone thatReceives the Options Message 260 displays the message 262 and allows theEDA customer to respond to the message with an automatic Callback 264.

In an alternative embodiment the Render Options Message function mightinvolve a dynamically generated WAP page with HTML encoded links thatautomatically dial the callback number. Another embodiment might involvemultimedia images that represent the various options with linkedcallback numbers as HTML anchors.

Processing the Referral Message

Tier 3 represents the business infrastructure of a message-based EDApaid referral system. In reference to FIG. 10, to begin the referralprocessing cycle, a message center server Receives the Callback 266.Next the message server Authenticates the Session ID, which basicallymeans the referral service identifies who is making the callback. Thisauthentication involves determining the phone number of the wirelessdevice making the callback and using the number to generate a SessionID.

The Session ID is used to access the session data record constructed in256 perform the Correlate Session Data function 270. As previouslydescribed, the Session ID provides a method to relate two separatemessage requests to the same EDA referral. Because they share the sameSession ID, the loosely coupled requests can participate in a singlecomplete transaction. This session ID makes it possible for any numberof discrete transactions to be initiated 272 to complete the EDAReferral process.

1. (canceled)
 2. A method comprising: receiving keyword data associatedwith a directory service request based on a first call from a requesterto a directory assistance center; determining an advertiser associatedwith the keyword data; sending to the requester a message that includesa directory listing for the advertiser and a callback number associatedwith the advertiser; and determining based on a second call to thecallback number that the directory listing was selected by therequester.
 3. A method as recited in claim 2, wherein the message is oneof the following: a Short Message Service (SMS) message, a MultimediaMessage Service (MMS) message, an Enhanced Message Service (EMS)message, a messaged based on Wireless Application Protocol (WAP), anemail message, and an Instant Message (IM) message.
 4. A method asrecited in claim 2, wherein the keyword data is specified using one ormore of the following: an operator-assisted directory assistance, anautomated directory assistance, a wireless message, an email message,and an IM.
 5. A method as recited in claim 2, wherein the directorylisting is organized in an order associated with one or more of thefollowing: a location associated with the directory listing, a keywordrelevancy associated with the directory listing, and a referral amountassociated with the directory listing.
 6. A method as recited in claim2, wherein determining an advertiser includes updating and analyzing afinancial status for a potential advertiser.
 7. A method as recited inclaim 2, wherein determining based on the second call includesdetermining a phone number associated with the requester.
 8. A method asrecited in claim 2, wherein selecting the directory listing on aninterface of a wireless messaging device initiates the second call.
 9. Amethod as recited in claim 2, wherein the second call is a call from therequester to a business associated with the directory listing.
 10. Amethod as recited in claim 9, further comprising transferring the secondcall to the business.
 11. A method as recited in claim 2, wherein thesecond call is a response message.
 12. A method as recited in claim 2,wherein the message is responsive to a location associated with awireless messaging device.
 13. A method as recited in claim 2, whereineach of the first call and the second call is one or more of thefollowing: a telephonic call and a message call.
 14. A method as recitedin claim 2, wherein the callback number comprises an extensionassociated with the advertiser.
 15. A method as recited in claim 2,wherein determining based on the second call includes identifying therequester based at least in part on an identifier associated with therequester for correlating the second call with the message.
 16. A methodas recited in claim 15, wherein the identifier comprises a Session ID.17. A method as recited in claim 16, wherein the Session ID is computedfrom the calling phone number.
 18. A method as recited in claim 16,wherein the Session ID comprises the calling phone number.
 19. A methodas recited in claim 16, wherein the Session ID comprises a hash codegenerated from the calling phone number.
 20. A method as recited inclaim 15, wherein the identifier is stored with a list mapping callbacknumbers to phone numbers associated with a corresponding advertiser. 21.A method as recited in claim 20, further comprising using the indicationto initiate a revenue transaction for charging the advertiser andwherein using the indication to initiate a revenue transactioncomprises: determining the identifier from a wireless messaging device;using the identifier to access the list mapping; using the callbacknumber and the list mapping to determine the advertiser; and chargingthe advertiser.
 22. A method as recited in claim 2, further comprisingusing the indication to initiate a revenue transaction for charging theadvertiser.
 23. A system comprising: a communication interface; and aprocessor at a directory assistance center configured to receive keyworddata associated with a directory service request based on a first callfrom a requester to a directory assistance center; determine anadvertiser associated with the keyword data; send to the requester amessage that includes a directory listing for the advertiser and acallback number associated with the advertiser; and determine based on asecond call to the callback number that the directory listing wasselected by the requester.
 24. A system as recited in claim 23, whereinthe message is one of the following: a Short Message Service (SMS)message, a Multimedia Message Service (MMS) message, an Enhanced MessageService (EMS) message, a messaged based on Wireless Application Protocol(WAP), an email message, and an Instant Message (IM) message.
 25. Asystem as recited in claim 23, wherein the second call is a call fromthe requester to a business associated with the directory listing.
 26. Asystem as recited in claim 23, wherein to determine based on the secondcall includes identifying the requester based at least in part on anidentifier associated with the requester for correlating the second callwith the message.
 27. A computer program product, the computer programproduct being embodied in a computer readable medium and comprisingcomputer instructions for: receiving keyword data associated with adirectory service request based on a first call from a requester to adirectory assistance center; determining an advertiser associated withthe keyword data; sending to the requester a message that includes adirectory listing for the advertiser and a callback number associatedwith the advertiser; and determining based on a second call to thecallback number that the directory listing was selected by therequester.
 28. A computer program product as recited in claim 27,wherein the message is one of the following: a Short Message Service(SMS) message, a Multimedia Message Service (MMS) message, an EnhancedMessage Service (EMS) message, a messaged based on Wireless ApplicationProtocol (WAP), an email message, and an Instant Message (IM) message.29. A computer program product as recited in claim 27, wherein thesecond call is a call from the requester to a business associated withthe directory listing.
 30. A computer program product as recited inclaim 27, wherein to determine based on the second call includesidentifying the requester based at least in part on an identifierassociated with the requester for correlating the second call with themessage.